package com.xiaotu.storage.converter;

import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Component;

import com.xiaotu.common.exception.SpiderException;
import com.xiaotu.common.exception.SpiderExceptionCode;
import com.xiaotu.common.util.RegexUtils;

import net.sf.json.JSONObject;

/**
 * @类名 GetNumberFormateConverter
 * @日期 2017年2月21日
 * @作者 高海军
 * @功能 获取数值型数据并转换
 */
@Component("GetNumberFormateConverter")
public class GetNumberFormateConverter extends NumberFormateConverter
{
	@Override
	protected Object doConvert(String value, JSONObject target,
			boolean needThrow)
	{
		String val = RegexUtils.regexSearch(RegexUtils.REGEX_NUMBER, value);
		if (StringUtils.isEmpty(val))
			if (needThrow)
				throw new SpiderException(
						SpiderExceptionCode.NumberFormateException,
						"value:" + value);
			else
				return value;
		return super.doConvert(val, target, needThrow);
	}
}
